home *** CD-ROM | disk | FTP | other *** search
Wrap
package javax.swing; import java.applet.Applet; import java.awt.AWTEvent; import java.awt.Component; import java.awt.Container; import java.awt.Dialog; import java.awt.FontMetrics; import java.awt.Frame; import java.awt.Graphics; import java.awt.Point; import java.awt.Rectangle; import java.awt.Window; import java.awt.event.InputEvent; import java.awt.event.MouseEvent; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.Hashtable; import java.util.Vector; import javax.accessibility.Accessible; import javax.accessibility.AccessibleComponent; import javax.accessibility.AccessibleContext; import javax.accessibility.AccessibleSelection; import javax.accessibility.AccessibleState; import javax.accessibility.AccessibleStateSet; import javax.swing.text.View; public class SwingUtilities implements SwingConstants { private static boolean canAccessEventQueue = false; private static boolean eventQueueTested = false; static boolean is1dot2 = true; private static Class eventDispatchThreadClass; private static final Object sharedOwnerFrameKey; private static final Object dialogsKey; static Hashtable appContextTable; // $FF: synthetic field static Class class$java$lang$Class; static { try { Method var0 = (class$java$lang$Class != null ? class$java$lang$Class : (class$java$lang$Class = class$("java.lang.Class"))).getMethod("getProtectionDomain", (Class[])null); is1dot2 = var0 != null; } catch (NoSuchMethodException var1) { is1dot2 = false; } if (is1dot2) { System.err.println("warning: running 1.1 version of SwingUtilities"); } eventDispatchThreadClass = null; sharedOwnerFrameKey = new StringBuffer("SwingUtilities.sharedOwnerFrame"); dialogsKey = new StringBuffer("SwingUtilities.dialogs"); appContextTable = new Hashtable(2); } private SwingUtilities() { throw new Error("SwingUtilities is just a container for static methods"); } static Object appContextGet(Object var0) { return appContextTable.get(var0); } static void appContextPut(Object var0, Object var1) { appContextTable.put(var0, var1); } static void appContextRemove(Object var0) { appContextTable.remove(var0); } // $FF: synthetic method static Class class$(String var0) { try { return Class.forName(var0); } catch (ClassNotFoundException var2) { throw new NoClassDefFoundError(((Throwable)var2).getMessage()); } } public static Rectangle[] computeDifference(Rectangle var0, Rectangle var1) { if (var1 != null && var0.intersects(var1) && !isRectangleContainingRectangle(var1, var0)) { Rectangle var2 = new Rectangle(); Rectangle var3 = null; Rectangle var4 = null; Rectangle var5 = null; Rectangle var6 = null; int var8 = 0; if (isRectangleContainingRectangle(var0, var1)) { var2.x = var0.x; var2.y = var0.y; var2.width = var1.x - var0.x; var2.height = var0.height; if (var2.width > 0 && var2.height > 0) { var3 = new Rectangle(var2); ++var8; } var2.x = var1.x; var2.y = var0.y; var2.width = var1.width; var2.height = var1.y - var0.y; if (var2.width > 0 && var2.height > 0) { var4 = new Rectangle(var2); ++var8; } var2.x = var1.x; var2.y = var1.y + var1.height; var2.width = var1.width; var2.height = var0.y + var0.height - (var1.y + var1.height); if (var2.width > 0 && var2.height > 0) { var5 = new Rectangle(var2); ++var8; } var2.x = var1.x + var1.width; var2.y = var0.y; var2.width = var0.x + var0.width - (var1.x + var1.width); var2.height = var0.height; if (var2.width > 0 && var2.height > 0) { var6 = new Rectangle(var2); ++var8; } } else if (var1.x <= var0.x && var1.y <= var0.y) { if (var1.x + var1.width > var0.x + var0.width) { var2.x = var0.x; var2.y = var1.y + var1.height; var2.width = var0.width; var2.height = var0.y + var0.height - (var1.y + var1.height); if (var2.width > 0 && var2.height > 0) { var3 = var2; ++var8; } } else if (var1.y + var1.height > var0.y + var0.height) { var2.setBounds(var1.x + var1.width, var0.y, var0.x + var0.width - (var1.x + var1.width), var0.height); if (var2.width > 0 && var2.height > 0) { var3 = var2; ++var8; } } else { var2.setBounds(var1.x + var1.width, var0.y, var0.x + var0.width - (var1.x + var1.width), var1.y + var1.height - var0.y); if (var2.width > 0 && var2.height > 0) { var3 = new Rectangle(var2); ++var8; } var2.setBounds(var0.x, var1.y + var1.height, var0.width, var0.y + var0.height - (var1.y + var1.height)); if (var2.width > 0 && var2.height > 0) { var4 = new Rectangle(var2); ++var8; } } } else if (var1.x <= var0.x && var1.y + var1.height >= var0.y + var0.height) { if (var1.x + var1.width > var0.x + var0.width) { var2.setBounds(var0.x, var0.y, var0.width, var1.y - var0.y); if (var2.width > 0 && var2.height > 0) { var3 = var2; ++var8; } } else { var2.setBounds(var0.x, var0.y, var0.width, var1.y - var0.y); if (var2.width > 0 && var2.height > 0) { var3 = new Rectangle(var2); ++var8; } var2.setBounds(var1.x + var1.width, var1.y, var0.x + var0.width - (var1.x + var1.width), var0.y + var0.height - var1.y); if (var2.width > 0 && var2.height > 0) { var4 = new Rectangle(var2); ++var8; } } } else if (var1.x <= var0.x) { if (var1.x + var1.width >= var0.x + var0.width) { var2.setBounds(var0.x, var0.y, var0.width, var1.y - var0.y); if (var2.width > 0 && var2.height > 0) { var3 = new Rectangle(var2); ++var8; } var2.setBounds(var0.x, var1.y + var1.height, var0.width, var0.y + var0.height - (var1.y + var1.height)); if (var2.width > 0 && var2.height > 0) { var4 = new Rectangle(var2); ++var8; } } else { var2.setBounds(var0.x, var0.y, var0.width, var1.y - var0.y); if (var2.width > 0 && var2.height > 0) { var3 = new Rectangle(var2); ++var8; } var2.setBounds(var1.x + var1.width, var1.y, var0.x + var0.width - (var1.x + var1.width), var1.height); if (var2.width > 0 && var2.height > 0) { var4 = new Rectangle(var2); ++var8; } var2.setBounds(var0.x, var1.y + var1.height, var0.width, var0.y + var0.height - (var1.y + var1.height)); if (var2.width > 0 && var2.height > 0) { var5 = new Rectangle(var2); ++var8; } } } else if (var1.x <= var0.x + var0.width && var1.x + var1.width > var0.x + var0.width) { if (var1.y <= var0.y && var1.y + var1.height > var0.y + var0.height) { var2.setBounds(var0.x, var0.y, var1.x - var0.x, var0.height); if (var2.width > 0 && var2.height > 0) { var3 = var2; ++var8; } } else if (var1.y <= var0.y) { var2.setBounds(var0.x, var0.y, var1.x - var0.x, var1.y + var1.height - var0.y); if (var2.width > 0 && var2.height > 0) { var3 = new Rectangle(var2); ++var8; } var2.setBounds(var0.x, var1.y + var1.height, var0.width, var0.y + var0.height - (var1.y + var1.height)); if (var2.width > 0 && var2.height > 0) { var4 = new Rectangle(var2); ++var8; } } else if (var1.y + var1.height > var0.y + var0.height) { var2.setBounds(var0.x, var0.y, var0.width, var1.y - var0.y); if (var2.width > 0 && var2.height > 0) { var3 = new Rectangle(var2); ++var8; } var2.setBounds(var0.x, var1.y, var1.x - var0.x, var0.y + var0.height - var1.y); if (var2.width > 0 && var2.height > 0) { var4 = new Rectangle(var2); ++var8; } } else { var2.setBounds(var0.x, var0.y, var0.width, var1.y - var0.y); if (var2.width > 0 && var2.height > 0) { var3 = new Rectangle(var2); ++var8; } var2.setBounds(var0.x, var1.y, var1.x - var0.x, var1.height); if (var2.width > 0 && var2.height > 0) { var4 = new Rectangle(var2); ++var8; } var2.setBounds(var0.x, var1.y + var1.height, var0.width, var0.y + var0.height - (var1.y + var1.height)); if (var2.width > 0 && var2.height > 0) { var5 = new Rectangle(var2); ++var8; } } } else if (var1.x >= var0.x && var1.x + var1.width <= var0.x + var0.width) { if (var1.y <= var0.y && var1.y + var1.height > var0.y + var0.height) { var2.setBounds(var0.x, var0.y, var1.x - var0.x, var0.height); if (var2.width > 0 && var2.height > 0) { var3 = new Rectangle(var2); ++var8; } var2.setBounds(var1.x + var1.width, var0.y, var0.x + var0.width - (var1.x + var1.width), var0.height); if (var2.width > 0 && var2.height > 0) { var4 = new Rectangle(var2); ++var8; } } else if (var1.y <= var0.y) { var2.setBounds(var0.x, var0.y, var1.x - var0.x, var0.height); if (var2.width > 0 && var2.height > 0) { var3 = new Rectangle(var2); ++var8; } var2.setBounds(var1.x, var1.y + var1.height, var1.width, var0.y + var0.height - (var1.y + var1.height)); if (var2.width > 0 && var2.height > 0) { var4 = new Rectangle(var2); ++var8; } var2.setBounds(var1.x + var1.width, var0.y, var0.x + var0.width - (var1.x + var1.width), var0.height); if (var2.width > 0 && var2.height > 0) { var5 = new Rectangle(var2); ++var8; } } else { var2.setBounds(var0.x, var0.y, var1.x - var0.x, var0.height); if (var2.width > 0 && var2.height > 0) { var3 = new Rectangle(var2); ++var8; } var2.setBounds(var1.x, var0.y, var1.width, var1.y - var0.y); if (var2.width > 0 && var2.height > 0) { var4 = new Rectangle(var2); ++var8; } var2.setBounds(var1.x + var1.width, var0.y, var0.x + var0.width - (var1.x + var1.width), var0.height); if (var2.width > 0 && var2.height > 0) { var5 = new Rectangle(var2); ++var8; } } } Rectangle[] var7 = new Rectangle[var8]; var8 = 0; if (var3 != null) { var7[var8++] = var3; } if (var4 != null) { var7[var8++] = var4; } if (var5 != null) { var7[var8++] = var5; } if (var6 != null) { var7[var8++] = var6; } return var7; } else { return new Rectangle[0]; } } public static Rectangle computeIntersection(int var0, int var1, int var2, int var3, Rectangle var4) { int var5 = var0 > var4.x ? var0 : var4.x; int var6 = var0 + var2 < var4.x + var4.width ? var0 + var2 : var4.x + var4.width; int var7 = var1 > var4.y ? var1 : var4.y; int var8 = var1 + var3 < var4.y + var4.height ? var1 + var3 : var4.y + var4.height; var4.x = var5; var4.y = var7; var4.width = var6 - var5; var4.height = var8 - var7; if (var4.width < 0 || var4.height < 0) { var4.x = var4.y = var4.width = var4.height = 0; } return var4; } public static int computeStringWidth(FontMetrics var0, String var1) { if (is1dot2) { return var0.stringWidth(var1); } else { int[] var2 = var0.getWidths(); int var5 = 0; int var3 = 0; for(int var4 = var1.length(); var3 < var4; ++var3) { char var6 = var1.charAt(var3); if (var6 > 255) { return var0.stringWidth(var1); } var5 += var2[var6]; } return var5; } } public static Rectangle computeUnion(int var0, int var1, int var2, int var3, Rectangle var4) { int var5 = var0 < var4.x ? var0 : var4.x; int var6 = var0 + var2 > var4.x + var4.width ? var0 + var2 : var4.x + var4.width; int var7 = var1 < var4.y ? var1 : var4.y; int var8 = var1 + var3 > var4.y + var4.height ? var1 + var3 : var4.y + var4.height; var4.x = var5; var4.y = var7; var4.width = var6 - var5; var4.height = var8 - var7; return var4; } public static MouseEvent convertMouseEvent(Component var0, MouseEvent var1, Component var2) { Point var3 = convertPoint(var0, new Point(var1.getX(), var1.getY()), var2); Component var4; if (var2 != null) { var4 = var2; } else { var4 = var0; } return new MouseEvent(var4, ((AWTEvent)var1).getID(), ((InputEvent)var1).getWhen(), ((InputEvent)var1).getModifiers(), var3.x, var3.y, var1.getClickCount(), var1.isPopupTrigger()); } public static Point convertPoint(Component var0, int var1, int var2, Component var3) { Point var4 = new Point(var1, var2); return convertPoint(var0, var4, var3); } public static Point convertPoint(Component var0, Point var1, Component var2) { if (var0 == null && var2 == null) { return var1; } else { if (var0 == null) { var0 = getWindowAncestor((Component)var2); if (var0 == null) { throw new Error("Source component not connected to component tree hierarchy"); } } Point var3 = new Point(var1); convertPointToScreen(var3, (Component)var0); if (var2 == null) { var2 = getWindowAncestor((Component)var0); if (var2 == null) { throw new Error("Destination component not connected to component tree hierarchy"); } } convertPointFromScreen(var3, (Component)var2); return var3; } } public static void convertPointFromScreen(Point var0, Component var1) { while(true) { int var3; int var4; if (var1 instanceof JComponent) { var3 = ((JComponent)var1).getX(); var4 = ((JComponent)var1).getY(); } else if (var1 instanceof Applet) { Point var5 = ((Component)var1).getLocationOnScreen(); var3 = var5.x; var4 = var5.y; } else { Rectangle var2 = ((Component)var1).getBounds(); var3 = var2.x; var4 = var2.y; } var0.x -= var3; var0.y -= var4; if (!(var1 instanceof Window) && !(var1 instanceof Applet)) { var1 = ((Component)var1).getParent(); if (var1 != null) { continue; } } return; } } public static void convertPointToScreen(Point var0, Component var1) { while(true) { int var3; int var4; if (var1 instanceof JComponent) { var3 = ((JComponent)var1).getX(); var4 = ((JComponent)var1).getY(); } else if (var1 instanceof Applet) { Point var5 = ((Component)var1).getLocationOnScreen(); var3 = var5.x; var4 = var5.y; } else { Rectangle var2 = ((Component)var1).getBounds(); var3 = var2.x; var4 = var2.y; } var0.x += var3; var0.y += var4; if (!(var1 instanceof Window) && !(var1 instanceof Applet)) { var1 = ((Component)var1).getParent(); if (var1 != null) { continue; } } return; } } public static Rectangle convertRectangle(Component var0, Rectangle var1, Component var2) { Point var3 = new Point(var1.x, var1.y); var3 = convertPoint(var0, var3, var2); return new Rectangle(var3.x, var3.y, var1.width, var1.height); } static final void doPrivileged(Runnable var0) { var0.run(); } public static Component findFocusOwner(Component var0) { if (var0 instanceof Window) { return ((Window)var0).getFocusOwner(); } else if (var0 instanceof JComponent && ((JComponent)var0).hasFocus()) { return var0; } else if (!(var0 instanceof Container)) { return null; } else { int var1 = ((Container)var0).countComponents(); for(int var2 = 0; var2 < var1; ++var2) { Component var3 = findFocusOwner(((Container)var0).getComponent(var2)); if (var3 != null) { return var3; } } return null; } } public static Accessible getAccessibleAt(Component var0, Point var1) { if (var0 instanceof Accessible) { Accessible var9 = (Accessible)var0; if (var9 != null) { AccessibleContext var11 = var9.getAccessibleContext(); if (var11 != null) { int var14 = var11.getAccessibleChildrenCount(); for(int var15 = 0; var15 < var14; ++var15) { var9 = var11.getAccessibleChild(var15); if (var9 != null) { var11 = var9.getAccessibleContext(); if (var11 != null) { AccessibleComponent var12 = var11.getAccessibleComponent(); if (var12 != null && var12.isShowing()) { Point var13 = var12.getLocation(); Point var8 = new Point(var1.x - var13.x, var1.y - var13.y); if (var12.contains(var8)) { return var9; } } } } } } } return (Accessible)var0; } else { Component var2 = var0; if (!var0.contains(var1.x, var1.y)) { var2 = null; } else if (var0 instanceof Container) { Container var3 = (Container)var0; int var4 = var3.getComponentCount(); for(int var5 = 0; var5 < var4; ++var5) { Component var6 = var3.getComponent(var5); if (var6 != null && var6.isShowing()) { Point var7 = var6.getLocation(); if (var6.contains(var1.x - var7.x, var1.y - var7.y)) { var2 = var6; } } } } return var2 instanceof Accessible ? (Accessible)var2 : null; } } public static Accessible getAccessibleChild(Component var0, int var1) { if (var0 instanceof Container) { Component[] var2 = ((Container)var0).getComponents(); int var3 = 0; for(int var4 = 0; var4 < var2.length; ++var4) { if (var2[var4] instanceof Accessible) { if (var3 == var1) { return (Accessible)var2[var4]; } ++var3; } } } return null; } public static int getAccessibleChildrenCount(Component var0) { int var1 = 0; if (var0 instanceof Container) { Component[] var2 = ((Container)var0).getComponents(); for(int var3 = 0; var3 < var2.length; ++var3) { if (var2[var3] instanceof Accessible) { ++var1; } } } return var1; } public static int getAccessibleIndexInParent(Component var0) { int var1 = -1; Container var2 = var0.getParent(); if (var2 != null && var2 instanceof Accessible) { Component[] var3 = var2.getComponents(); for(int var4 = 0; var4 < var3.length; ++var4) { if (var3[var4] instanceof Accessible) { ++var1; } if (var0.equals(var3[var4])) { return var1; } } } return -1; } public static AccessibleStateSet getAccessibleStateSet(Component var0) { AccessibleStateSet var1 = new AccessibleStateSet(); if (var0.isEnabled()) { var1.add(AccessibleState.ENABLED); } if (var0.isFocusTraversable()) { var1.add(AccessibleState.FOCUSABLE); } if (var0.isVisible()) { var1.add(AccessibleState.VISIBLE); } if (var0.isShowing()) { var1.add(AccessibleState.SHOWING); } for(Container var2 = var0.getParent(); var2 != null; var2 = ((Component)var2).getParent()) { if (var2 instanceof Window && ((Window)var2).getFocusOwner() == var0) { var1.add(AccessibleState.FOCUSED); } } if (var0 instanceof Accessible) { AccessibleContext var3 = ((Accessible)var0).getAccessibleContext(); if (var3 != null) { Accessible var4 = var3.getAccessibleParent(); if (var4 != null) { AccessibleContext var5 = var4.getAccessibleContext(); if (var5 != null) { AccessibleSelection var6 = var5.getAccessibleSelection(); if (var6 != null) { var1.add(AccessibleState.SELECTABLE); int var7 = var3.getAccessibleIndexInParent(); if (var7 >= 0 && var6.isAccessibleChildSelected(var7)) { var1.add(AccessibleState.SELECTED); } } } } } } if (var0 instanceof JComponent && ((JComponent)var0).isOpaque()) { var1.add(AccessibleState.OPAQUE); } return var1; } public static Container getAncestorNamed(String var0, Component var1) { if (var1 != null && var0 != null) { Container var2; for(var2 = var1.getParent(); var2 != null && !var0.equals(((Component)var2).getName()); var2 = ((Component)var2).getParent()) { } return var2; } else { return null; } } public static Container getAncestorOfClass(Class var0, Component var1) { if (var1 != null && var0 != null) { Container var2; for(var2 = var1.getParent(); var2 != null && !var0.isInstance(var2); var2 = ((Component)var2).getParent()) { } return var2; } else { return null; } } private static CellRendererPane getCellRendererPane(Component var0, Container var1) { Object var2 = var0.getParent(); if (var2 instanceof CellRendererPane) { if (((Component)var2).getParent() != var1) { var1.add((Component)var2); } } else { var2 = new CellRendererPane(); ((Container)var2).add(var0); var1.add((Component)var2); } return (CellRendererPane)var2; } public static Component getDeepestComponentAt(Component var0, int var1, int var2) { if (!var0.contains(var1, var2)) { return null; } else { if (var0 instanceof Container) { Component[] var3 = ((Container)var0).getComponents(); for(int var4 = 0; var4 < var3.length; ++var4) { Component var5 = var3[var4]; if (var5 != null && var5.isVisible()) { Point var6 = var5.getLocation(); if (var5 instanceof Container) { var5 = getDeepestComponentAt(var5, var1 - var6.x, var2 - var6.y); } else { var5 = var5.getComponentAt(var1 - var6.x, var2 - var6.y); } if (var5 != null && var5.isVisible()) { return var5; } } } } return var0; } } public static Rectangle getLocalBounds(Component var0) { Rectangle var1 = new Rectangle(var0.getBounds()); var1.x = var1.y = 0; return var1; } static JDialog getRecycledModalDialog(Frame var0, String var1) { Vector var2 = (Vector)appContextGet(dialogsKey); if (var2 == null) { var2 = new Vector(); appContextPut(dialogsKey, var2); } Object var3 = null; synchronized(var2){} try { for(int var7 = 0; var7 < var2.size(); ++var7) { JDialog var10 = (JDialog)var2.elementAt(var7); if (((Component)var10).getParent() == var0) { var2.removeElement(var10); ((Dialog)var10).setTitle(var1); JDialog var4 = var10; return var4; } } JDialog var11 = new JDialog(var0, var1, true); return var11; } catch (Throwable var9) { throw var9; } } public static Component getRoot(Component var0) { Object var1 = null; for(Object var2 = var0; var2 != null; var2 = ((Component)var2).getParent()) { if (var2 instanceof Window) { return (Component)var2; } if (var2 instanceof Applet) { var1 = var2; } } return (Component)var1; } public static JRootPane getRootPane(Component var0) { if (var0 instanceof RootPaneContainer) { return ((RootPaneContainer)var0).getRootPane(); } else { while(var0 != null) { if (var0 instanceof JRootPane) { return (JRootPane)var0; } var0 = ((Component)var0).getParent(); } return null; } } static Frame getSharedOwnerFrame() { Object var0 = (Frame)appContextGet(sharedOwnerFrameKey); if (var0 == null) { var0 = new 2(); appContextPut(sharedOwnerFrameKey, var0); } return (Frame)var0; } private static Window getWindowAncestor(Component var0) { for(Container var1 = var0.getParent(); var1 != null; var1 = ((Component)var1).getParent()) { if (var1 instanceof Window) { return (Window)var1; } } return null; } public static void invokeAndWait(Runnable var0) throws InterruptedException, InvocationTargetException { if (isEventDispatchThread()) { throw new Error("Cannot call invokeAndWait from the event dispatcher thread"); } else { 1 var1 = new 1(var0); Object var2 = null; synchronized(var1){} try { var6 = SystemEventQueueUtilities.postRunnable(var0, var1); var1.wait(); } catch (Throwable var5) { throw var5; } if (var6 != null) { throw new InvocationTargetException(var6); } } } public static void invokeLater(Runnable var0) { SystemEventQueueUtilities.postRunnable(var0, (Object)null); } public static boolean isDescendingFrom(Component var0, Component var1) { if (var0 == var1) { return true; } else { for(Container var2 = var0.getParent(); var2 != null; var2 = ((Component)var2).getParent()) { if (var2 == var1) { return true; } } return false; } } public static boolean isEventDispatchThread() { Thread var0 = Thread.currentThread(); if (eventDispatchThreadClass == null) { Class var1 = var0.getClass(); if (var1.getName().indexOf("EventDispatchThread") < 0 && var1.getName().indexOf("JMEventQueue") < 0) { return false; } else { eventDispatchThreadClass = var1; return true; } } else { return eventDispatchThreadClass.isInstance(var0); } } public static boolean isLeftMouseButton(MouseEvent var0) { if (is1dot2) { return (((InputEvent)var0).getModifiers() & 16) != 0; } else { return (((InputEvent)var0).getModifiers() & 16) != 0 || (((InputEvent)var0).getModifiers() & 12) == 0; } } static boolean isLeftToRight(Component var0) { return true; } public static boolean isMiddleMouseButton(MouseEvent var0) { return (((InputEvent)var0).getModifiers() & 8) == 8; } public static final boolean isRectangleContainingRectangle(Rectangle var0, Rectangle var1) { return var1.x >= var0.x && var1.x + var1.width <= var0.x + var0.width && var1.y >= var0.y && var1.y + var1.height <= var0.y + var0.height; } public static boolean isRightMouseButton(MouseEvent var0) { return (((InputEvent)var0).getModifiers() & 4) == 4; } public static String layoutCompoundLabel(FontMetrics var0, String var1, Icon var2, int var3, int var4, int var5, int var6, Rectangle var7, Rectangle var8, Rectangle var9, int var10) { return layoutCompoundLabelImpl((JComponent)null, var0, var1, var2, var3, var4, var5, var6, var7, var8, var9, var10); } public static String layoutCompoundLabel(JComponent var0, FontMetrics var1, String var2, Icon var3, int var4, int var5, int var6, int var7, Rectangle var8, Rectangle var9, Rectangle var10, int var11) { boolean var12 = true; int var13 = var5; int var14 = var7; switch (var5) { case 10: var13 = var12 ? 2 : 4; break; case 11: var13 = var12 ? 4 : 2; } switch (var7) { case 10: var14 = var12 ? 2 : 4; break; case 11: var14 = var12 ? 4 : 2; } return layoutCompoundLabelImpl(var0, var1, var2, var3, var4, var13, var6, var14, var8, var9, var10, var11); } private static String layoutCompoundLabelImpl(JComponent var0, FontMetrics var1, String var2, Icon var3, int var4, int var5, int var6, int var7, Rectangle var8, Rectangle var9, Rectangle var10, int var11) { if (var3 != null) { var9.width = var3.getIconWidth(); var9.height = var3.getIconHeight(); } else { var9.width = var9.height = 0; } boolean var12 = var2 == null || var2.equals(""); View var13 = null; if (var12) { var10.width = var10.height = 0; var2 = ""; } else { var13 = var0 != null ? (View)var0.getClientProperty("html") : null; if (var13 != null) { var10.width = (int)var13.getPreferredSpan(0); var10.height = (int)var13.getPreferredSpan(1); } else { var10.width = computeStringWidth(var1, var2); var10.height = var1.getHeight(); } } int var14 = !var12 && var3 != null ? var11 : 0; if (!var12) { int var15; if (var7 == 0) { var15 = var8.width; } else { var15 = var8.width - (var9.width + var14); } if (var10.width > var15) { if (var13 != null) { var10.width = var15; } else { String var16 = "..."; int var17 = computeStringWidth(var1, var16); int var18; for(var18 = 0; var18 < var2.length(); ++var18) { var17 += var1.charWidth(var2.charAt(var18)); if (var17 > var15) { break; } } var2 = var2.substring(0, var18) + var16; var10.width = computeStringWidth(var1, var2); } } } if (var6 == 1) { if (var7 != 0) { var10.y = 0; } else { var10.y = -(var10.height + var14); } } else if (var6 == 0) { var10.y = var9.height / 2 - var10.height / 2; } else if (var7 != 0) { var10.y = var9.height - var10.height; } else { var10.y = var9.height + var14; } if (var7 == 2) { var10.x = -(var10.width + var14); } else if (var7 == 0) { var10.x = var9.width / 2 - var10.width / 2; } else { var10.x = var9.width + var14; } int var21 = Math.min(var9.x, var10.x); int var22 = Math.max(var9.x + var9.width, var10.x + var10.width) - var21; int var23 = Math.min(var9.y, var10.y); int var24 = Math.max(var9.y + var9.height, var10.y + var10.height) - var23; int var20; if (var4 == 1) { var20 = var8.y - var23; } else if (var4 == 0) { var20 = var8.y + var8.height / 2 - (var23 + var24 / 2); } else { var20 = var8.y + var8.height - (var23 + var24); } int var19; if (var5 == 2) { var19 = var8.x - var21; } else if (var5 == 4) { var19 = var8.x + var8.width - (var21 + var22); } else { var19 = var8.x + var8.width / 2 - (var21 + var22 / 2); } var10.x += var19; var10.y += var20; var9.x += var19; var9.y += var20; return var2; } static Class loadSystemClass(String var0) throws ClassNotFoundException { return Class.forName(var0); } public static void paintComponent(Graphics var0, Component var1, Container var2, int var3, int var4, int var5, int var6) { getCellRendererPane(var1, var2).paintComponent(var0, var1, var2, var3, var4, var5, var6, false); } public static void paintComponent(Graphics var0, Component var1, Container var2, Rectangle var3) { paintComponent(var0, var1, var2, var3.x, var3.y, var3.width, var3.height); } static void recycleModalDialog(JDialog var0) { Vector var1 = (Vector)appContextGet(dialogsKey); synchronized(var1){} try { var0.getContentPane().removeAll(); var1.addElement(var0); } catch (Throwable var4) { throw var4; } } public static void updateComponentTreeUI(Component var0) { updateComponentTreeUI0(var0); var0.invalidate(); var0.validate(); var0.repaint(); } private static void updateComponentTreeUI0(Component var0) { if (var0 instanceof JComponent) { ((JComponent)var0).updateUI(); } Component[] var1 = null; if (var0 instanceof JMenu) { var1 = ((JMenu)var0).getMenuComponents(); } else if (var0 instanceof Container) { var1 = ((Container)var0).getComponents(); } if (var1 != null) { for(int var2 = 0; var2 < var1.length; ++var2) { updateComponentTreeUI0(var1[var2]); } } } public static Window windowForComponent(Component var0) { for(Container var1 = var0.getParent(); var1 != null; var1 = ((Component)var1).getParent()) { if (var1 instanceof Window) { return (Window)var1; } } return null; } }